export const findParentNode = (tree: any, childId: any) => {
    for (let node of tree) {
        if (node?.children) {
            // 递归查找子节点
            let result = findParentNodeInChildren(node?.children, childId, node);
            if (result) return result;
        }
        // 如果当前节点是目标子节点（理论上不应该发生，除非子节点和父节点直接比较）
        if (node?.id === childId) {
            // 这里返回null或者当前节点作为父节点，根据实际情况决定
            // 假设我们只需要找到直接的父节点
            return null; // 或者返回一个表示“这是根节点”的特殊值
        }
    }
    return null; // 没有找到
};

export const findParentNodeInChildren = (children: any, childId: any, parent: any) => {
    for (let child of children) {
        if (child?.key === childId) {
            // 找到子节点，返回其父节点
            return parent;
        }
        if (child?.children) {
            // 继续递归查找
            let result: any = findParentNodeInChildren(child?.children, childId, child);
            if (result) return result;
        }
    }
    return null; // 没有找到
};
